﻿using Adp.Common;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Nhd.Models;

namespace Nhd.Controllers
{
    public class SiteController :BaseController
    {
        NhdContext ctx;

        public SiteController(NhdContext ctx)
        {
            this.ctx = ctx;
        }

        //public IActionResult GetSites()
        //{
        //    var start = Form.GetInt("start");
        //    var limit = Form.GetInt("limit");

        //    var count = ctx.Site.Count();
        //    var r = ctx.Site.Skip(start).Take(limit).ToList();
        //    return this.ToJson(new
        //    {
        //        success = true,
        //        totalcount = count,
        //        data = from q in r
        //               select new
        //               {
        //                   q.SiteID,
        //                   q.ID,
        //                   q.Name,
        //                   q.Position,
        //                   q.Released,
        //                   q.Domain
        //               }
        //    });
        //}
        //public IActionResult AddSite(Site site)
        //{
        //    if (!ModelState.IsValid)
        //    {
        //        return this.ToJson(new
        //        {
        //            success = false,
        //            stateMsg = from sk in ModelState.AsEnumerable()
        //                       where sk.Value.Errors.Count() > 0
        //                       select new { id = sk.Key, msg = sk.Value.Errors.FirstOrDefault().ErrorMessage }
        //        });
        //    }

        //    site.RoleID = DAL.MaxID();
        //    site.Modtime = DateTime.Now;
        //    site.Creator = DAL.GetLogonInfo().ManagerID;
        //    site.Locked = false;
        //    ctx.Site.Add(site);
        //    ctx.SaveChanges();

        //    Adp.Logs.ManagerAction.Action("新建站点:{0}", site.Name);

        //    return this.ToJson(new
        //    {
        //        success = true
        //    });
        //}

        //public IActionResult EditSite(Site site)
        //{
        //    if (!ModelState.IsValid)
        //    {
        //        return this.ToJson(new
        //        {
        //            success = false,
        //            stateMsg = from sk in ModelState.AsEnumerable()
        //                       where sk.Value.Errors.Count() > 0
        //                       select new { id = sk.Key, msg = sk.Value.Errors.FirstOrDefault().ErrorMessage }
        //        });
        //    }

        //    var mo = ctx.Site.FirstOrDefault(it => it.SiteID == site.SiteID);
        //    if (mo != null)
        //    {
        //        var on = mo.Name;
        //        mo.Name = site.Name;
        //        mo.Remark = site.Remark;
        //        mo.Modtime = DateTime.Now;
        //        ctx.SaveChanges();
        //        Adp.Logs.ManagerAction.Action("修改站点:{0}->{1}", on, mo.Name);
        //        return this.ToJson(new
        //        {
        //            success = true
        //        });
        //    }

        //    return this.ToJson(new
        //    {
        //        success = false,
        //        msg = "站点不存在"
        //    });
        //}

        //public ActionResult GetSite()
        //{
        //    var SiteID = Form.GetLong("SiteID");
        //    var m = ctx.Site.FirstOrDefault(it => it.SiteID == SiteID);
        //    if (m != null)
        //    {
        //        return this.ToJson(new
        //        {
        //            success = true,
        //            data = new
        //            {
        //                m.SiteID,
        //                m.ID,
        //                m.Name,
        //                m.Position,
        //                m.Domain
        //            }
        //        });
        //    }
        //    return this.ToJson(new
        //    {
        //        success = false,
        //        msg = "站点不存在"
        //    });
        //}

        //public IActionResult IDExists()
        //{
        //    var SiteID = Form.GetLong("SiteID");
        //    var ID = Form.GetString("ID");

        //    var r = ctx.Site.Any(it => it.ID.Trim() == ID.Trim() && (SiteID == 0 || it.SiteID != SiteID));

        //    return this.ToJson(new
        //    {
        //        success = r
        //    });
        //}

        //public ActionResult DelSite()
        //{
        //    var SiteID = Form.GetLong("SiteID");
        //    var m = ctx.Site.FirstOrDefault(it => it.SiteID == SiteID);
        //    if (m != null)
        //    {
        //        ctx.Site.Remove(m);
        //        ctx.SaveChanges();
        //        Adp.Logs.ManagerAction.Action("删除站点{0}", m.Name);
        //        return this.ToJson(new
        //        {
        //            success = true
        //        });
        //    }
        //    return this.ToJson(new
        //    {
        //        success = false,
        //        msg = "站点不存在"
        //    });
        //}

    }
}
